package com.bcbim.smart_water.equipment_alarm_monitoring.mapper;

import com.bcbim.smart_water_interface.equipment_alarm_monitoring.dto.EquipmentAlarmMonitoringDTO;
import com.bcbim.smart_water_interface.equipment_alarm_monitoring.vo.EquipmentAlarmDataMonitoringVO;
import com.bcbim.smart_water_interface.equipment_alarm_monitoring.vo.EquipmentAlarmMonitoringVO;
import com.bcbim.smart_water_interface.equipment_alarm_monitoring.vo.ListEquipmentAlarmMonitoringVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Description: 设备报警监控
 * @Author lihonggang
 * @Date 2021/11/02  14:59
 * @Version V1.0
 **/
@Mapper
public interface EquipmentAlarmMonitoringMapper {
    /**
     * @Description:  设备报警监控列表查询
     * @Date:  2021/11/2 15:10
     * @Param: [query]
     * @return: java.util.List<com.bcbim.pipeline_interface.equipmentAlarmMonitoring.vo.ListEquipmentAlarmMonitoringVO>
     * @Author: lihonggang
     **/
    List<ListEquipmentAlarmMonitoringVO> listEquipmentAlarmMonitoring(EquipmentAlarmMonitoringDTO query);

    /**
     * @Description:  查询设备报警监控总数
     * @Date:  2021/11/2 15:34
     * @Param: [query]
     * @return: int
     * @Author: lihonggang
     **/
    int equipmentAlarmMonitoringCount(EquipmentAlarmMonitoringDTO query);
    /**
     * @Description:  查询设备报警监控详情
     * @Date:  2021/11/2 16:19
     * @Param: [id]
     * @return: com.bcbim.pipeline_interface.equipmentAlarmMonitoring.vo.EquipmentAlarmMonitoringVO
     * @Author: lihonggang
     **/
    EquipmentAlarmMonitoringVO getEquipmentAlarmMonitoring(String id);

    /**
     * @Description:
     * @Date:  2021/11/19 12:52
     * @Param: [id]
     * @return: EquipmentAlarmDataMonitoringVO
     * @Author: lihonggang
     **/
    EquipmentAlarmDataMonitoringVO getEquipmentAlarmDataMonitoring(String id);
    /**
     * @Description:  更新设备报警监控状态
     * @Date:  2021/11/2 16:54
     * @Param: [id]
     * @return: int
     * @Author: lihonggang
     **/
    int updateEquipmentAlarmMonitoring(String id);

    int updateEquipmentAlarmDataMonitoring(String id);


    /**
     * @Description:  查询历史报警个数
     * @Date:  2021/11/3 9:40
     * @Param: []
     * @return: java.util.Map<java.lang.String,java.lang.String>
     * @Author: lihonggang
     **/
    int historicalAlarmCount(String roadId);
    /**
     * @Description:  查询待处理个数
     * @Date:  2021/11/3 9:46
     * @Param: []
     * @return: java.util.Map<java.lang.String,java.lang.String>
     * @Author: lihonggang
     **/
    int pendingCount(String roadId);
    /**
     * @Description:  查询已处理个数
     * @Date:  2021/11/3 9:49
     * @Param: []
     * @return: java.util.Map<java.lang.String,java.lang.String>
     * @Author: lihonggang
     **/
    int processedCount();

}
